From: Tim Deegan Date: Wed, 21 Mar 2007 17:17:08 +0000 (+0000) Subject: [XEN] Shadow: check the _PAGE_PRESENT bit in fast-path MMIO shadow ptes X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~15280^2~1^2 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22man:///%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22man:/?a=commitdiff_plain;h=2ccced7b73c5d2d52febbaced473deeac9042c47;p=xen.git [XEN] Shadow: check the _PAGE_PRESENT bit in fast-path MMIO shadow ptes otherwise the fast-path code is not safe against some kinds of concurrent shadow updates. Signed-off-by: Tim Deegan --- diff --git a/xen/arch/x86/mm/shadow/types.h b/xen/arch/x86/mm/shadow/types.h index 400514f241..8397e7ae2c 100644 --- a/xen/arch/x86/mm/shadow/types.h +++ b/xen/arch/x86/mm/shadow/types.h @@ -597,7 +597,7 @@ accumulate_guest_flags(struct vcpu *v, walk_t *gw) * have reserved bits that we can use for this. */ -#define SH_L1E_MAGIC 0xffffffff00000000ULL +#define SH_L1E_MAGIC 0xffffffff00000001ULL static inline int sh_l1e_is_magic(shadow_l1e_t sl1e) { return ((sl1e.l1 & SH_L1E_MAGIC) == SH_L1E_MAGIC);